Review and validate the set of technology principles. These will normally form part of an overarching set of
architecture principles. Guidelines for developing and applying principles, and a sample set of application principles,
are given in Part
III, Architecture Principles .
Select relevant Technology Architecture resources (reference models, patterns, etc.) from the Architecture Repository
(see Part V, Architecture Repository), on the basis of the business drivers,
stakeholders, and their concerns.
Select relevant Technology Architecture viewpoints that will enable the architect to demonstrate how the stakeholder
concerns are being addressed in the Technology Architecture.
Identify appropriate tools and techniques to be used for capture, modeling, and analysis, in association with the
selected viewpoints. Depending on the degree of sophistication required, these may comprise simple documents and
spreadsheets, or more sophisticated modeling tools and techniques.
Determine Overall Modeling Process
For each viewpoint, select the models needed to support the specific view required, using the selected tool or method.
Ensure that all stakeholder concerns are covered. If they are not, create new models to address them, or augment
existing models (see above).
The process to develop a Technology Architecture incorporates the following steps:
-
Define a taxonomy of platform services and logical technology components (including standards)
-
Identify relevant locations where technology is deployed
-
Carry out a physical inventory of deployed technology and abstract up to fit into the taxonomy
-
Look at application and business requirements for technology
-
Is the technology in place fit-for-purpose to meet new requirements (i.e., does it meet functional and
non-functional requirements)?
-
Refine the taxonomy
-
Product selection (including dependent products)
-
Determine configuration of the selected technology
-
Determine impact:
-
Sizing and costing
-
Capacity planning
-
Installation/governance/migration impacts
In the earlier phases of the ADM, certain decisions made around service granularity and service boundaries will have
implications on the technology component and the platform service. The areas where the Technology Architecture may be
impacted will include the following:
-
Performance: The granularity of the service will impact on platform service requirements. Coarse-grained
services contain several units of functionality with potentially varying non-functional requirements, so platform
performance should be considered. In addition, coarse-grained services can sometimes contain more information than
actually required by the requesting system.
-
Maintainability: If service granularity is too coarse, then introducing changes to that service becomes
difficult and impacts the maintenance of the service and the platform on which it is delivered.
-
Location and Latency: Services might interact with each other over remote links and inter-service
communication will have in-built latency. Drawing service boundaries and setting the service granularity should
consider platform/location impact of these inter-service communications.
-
Availability: Service invocation is subject to network and/or service failure. So high communication
availability is an important consideration during service decomposition and defining service granularity
Product selection processes may occur within the Technology Architecture phase where existing products are re-used,
incremental capacity is being added, or product selection decisions are a constraint during project initiation.
Where product selection deviates from existing standards, involves significant effort, or has wide-ranging impact, this
activity should be flagged as an opportunity and addressed through the Opportunities & Solutions phase.
Identify Required Catalogs of Technology Building Blocks
Catalogs are inventories of the core assets of the business. Catalogs are hierarchical in nature and capture a
decomposition of a metamodel entity and also decompositions across related model entities (e.g., platform service ->
logical technology component -> physical technology component).
Catalogs form the raw material for development of matrices and diagrams and also act as a key resource for portfolio
managing business and IT capability.
The Technology Architecture should create technology catalogs as follows:
-
Based on existing technology catalogs and analysis of applications carried out in the Application Architecture
phase, collect a list of products in use.
-
If the requirements identified in the Application Architecture are not met by existing products, extend the product
list by examining products available on the market that provide the functionality and meet the required standards.
-
Classify products against the TOGAF TRM if appropriate, extending the model as necessary to fit the classification
of technology products in use.
-
If technology standards are currently in place, apply these to the technology component catalog to gain a baseline
view of compliance with technology standards.
The following catalogs should be considered for development within a Technology Architecture:
-
Technology standards
-
Technology portfolio
The structure of catalogs is based on the attributes of metamodel entities, as defined in Part IV, Content Metamodel .
Identify Required Matrices
Matrices show the core relationships between related model entities.
Matrices form the raw material for development of diagrams and also act as a key resource for impact assessment.
The following matrix should be considered for development within a Technology Architecture:
Identify Required Diagrams
Diagrams present the Technology Architecture information from a set of different perspectives (viewpoints) according to
the requirements of the stakeholders.
This activity provides a link between platform requirements and hosting requirements, as a single application may need
to be physically located in several environments to support local access, development lifecycles, and hosting
requirements.
For major baseline applications or application platforms (where multiple applications are hosted on the same
infrastructure stack), produce a stack diagram showing how hardware, operating system, software infrastructure, and
packaged applications combine.
If appropriate, extend the Application Architecture diagrams of software distribution to show how applications map onto
the technology platform.
For each environment, produce a logical diagram of hardware and software infrastructure showing the contents of the
environment and logical communications between components. Where available, collect capacity information on the
deployed infrastructure.
For each environment, produce a physical diagram of communications infrastructure, such as routers, switches,
firewalls, and network links. Where available, collect capacity information on the communications infrastructure.
The following diagrams should be considered for development within a Technology Architecture:
-
Environments and Locations diagram
-
Platform Decomposition diagram
-
Processing diagram
-
Networked Computing/Hardware diagram
-
Communications Engineering diagram
The structure of diagrams is based on the attributes of metamodel entities, as defined in Part IV, Content Metamodel .
Identify Types of Requirement to be Collected
Once the Technology Architecture catalogs, matrices, and diagrams have been developed, architecture modeling is
completed by formalizing the data-focused requirements for implementing the Target Architecture.
Within this step, the architecture engagement should identify types of requirement that must be met by the architecture
implementation, including:
-
Functional requirements
-
Non-functional requirements
-
Assumptions
-
Constraints
-
Domain-specific Technology Architecture principles
-
Policies
-
Standards
-
Guidelines
-
Specifications
Select Services
The services portfolios are combinations of basic services from the service categories in the TOGAF TRM that do not
conflict. The combination of services are again tested to ensure support for the applications. This is a pre-requisite
to the later step of defining the architecture fully.
The previously identified requirements can provide more detailed information about:
-
Requirements for organization-specific elements or pre-existing decisions (as applicable)
-
Pre-existing and unchanging organizational elements (as applicable)
-
Inherited external environment constraints
Where requirements demand definition of specialized services that are not identified in TOGAF, consideration should be
given to how these might be replaced if standardized services become available in the future.
For each building block, build up a service description portfolio as a set of non-conflicting services. The set of
services must be tested to ensure that the functionality provided meets application requirements.
|